Incremental modular home gateway

ABSTRACT

The invention concerns a communication device comprising: several external data sources, at least a local area network connecting peripherals, means enabling to establish connections between the local area network and the external data sources, means for controlling the incoming data from the external sources and for sending them to the local area network in order to reduce the bandwidth occupation on the local area network. The device comprises also: means for updating signalization tables comprised in the incoming data, means for inserting the modified signalization tables in the stream sent to the local area network. Application to IEEE-1394 networks.

The invention concerns a communication device and a communication method.

The invention can be applied for example in the field of home networks.

Typically, a home network allows communication, connection, interoperability between video equipments for personal or recorded video displaying, video games, . . . but mainly it should give to the user the opportunity to communicate easily with the external world.

Video programs, images, music, text pages, information data can be accessed from numerous sources provided by different heterogeneous means of transmission.

For example, television can be broadcasted from satellite, terrestrial, cable, LMDS (Broadcast Network) or delivered by Internet (Broadband Network). That is also true for music or web pages. There is no limit in mixing technologies.

A first approach to connect and adapt the home network to the outside world is to use a residential gateway that has numerous means of reception, a bridge that translates the transport protocol of the incoming data to the protocol supported by the home network.

A solution, commonly proposed, is to provide a box with slots (commonly PCI slots) in which the proper daughter boards are inserted according to the accesses requested by the user.

Such a solution is proposed in the patent application WO 00/11840 filed in the name of Mitsubishi on Aug. 12, 1999 entitled “home gateway”.

This solution presents a lot of drawbacks that are commonly not admitted in consumer products:

-   -   In consumer products, opening the box is performed by servicing         people only Allowing consumer to add boards by himself is not         admitted.     -   The basic platform that will receive add-on board(s) has         features that will never be used, but they must be paid by the         consumer, making the product less competitive for low-end         configuration.     -   More complicated the product is, more expensive it is.

Connectors, oversize power supply, large case . . . don't characterize low cost product.

-   -   An open system can be tampered more easily, paving the way to         the hackers for unauthorized acts.

Patent applications WO 99/57839 entitled “method and apparatus for user and device command and control in a network” filed on May 7, 1999 and WO 01/13374 entitled “device communication and control in a home network connected to an external network” filed on Aug. 17, 2000, both filed in the name of Samsung, describe a system interconnecting several external sources to a local area network. Each module provides a connection with an external data source. However, such modules do not modify the incoming stream in order to enable the cohabitation of several streams on the local area network and in particular do not adapt the incoming streams data rate to the limited bandwidth of a local area network.

The invention proposes a communication device comprising

-   -   several external data sources,     -   at least a local area network connecting peripherals,     -   means enabling to establish connections between the local area         network and the external data sources,     -   means for controlling the incoming data from the external         sources and sending them to the local area network in order to         reduce the bandwidth occupation on the local area network.

According to the invention, the device comprises:

-   -   means for updating signalization tables comprised in the         incoming data,     -   means for inserting the modified signalization tables in the         stream sent to the local area network.

Such a device controls the incoming data and thus, when the local area network is connected to many external sources, the invention is particularly suitable as it improves the simultaneous transfers of data from the different external sources.

According to a preferred embodiment, the communication device is intended to establish one connection with an external source upon request of peripherals of the local area network.

The connection with an external source is then made when requested, this can enable to save bandwidth on the local area network. Moreover, thanks to the means for controlling the incoming data, the bandwidth occupation is optimized for serving as many as possible requests from the peripherals.

According to a preferred embodiment, the communication device comprises filtering means intended to remove some data coming from the external sources to create a single program transport stream or a partial multiple program transport stream for the local area network from the multiple program transport stream selected from the external source.

A way to reduce the bandwidth is to remove the unnecessary information from the incoming data stream. When the incoming data stream comprises transport streams composed of several programs, some of the programs may not be requested by peripherals on the local area network. Thus a way to reduce the bandwidth is to remove the programs having packet identifiers not requested by the peripherals.

According to a preferred embodiment, the communication device comprises

-   -   means for updating signalization tables comprised in the         incoming data,     -   means for inserting the modified signalization tables in the         stream sent to the local area network.

When the incoming data is composed of several audio and video streams, the selection of one or more audio or video porgrams implies also the modification of the tables describing the content of the stream. The tables are modified and then reinserted in the modified stream.

According to a preferred embodiment, the filtering means are intended to remove packets containing non-requested packet identifiers from the multiple transport streams to create single transport streams.

According to a preferred embodiment, the communication device has means to guarantee a copy protection of the data coming from the external source.

Content protection is a key concern in providing audio video data to subscribers.

Some audio video digital programs, music, data are free, some others are in the copyright. These ones are mostly scrambled.

When a customer has paid rights, he can display and record the analog pictures.

In a network, every data of any type can be stored, modified, transmitted, duplicated without significant distortion thanks to the powerful features of the digital equipments that are interconnected.

Royalties must me preserved on one hand and, in the other hand, some copy permission could be granted to the customer.

For the customer, copy permission could be as simple as an instant display or as permissible as a full ownership. Access control level is granted by the owner of the material and the rights are managed by the access control of the gateway module.

Thanks to the access control from the gateway module, all the data in the copyright that are available in the home network have been given the access by the copy protection system.

According to a preferred embodiment, the local area network is compliant with IEEE-1394 protocol.

According to a preferred embodiment, the communication device is intended to generate a data stream on the local area network compliant with DVB or DSS standard.

The invention also concerns a system comprising:

-   -   Several external data sources,     -   At least a local area network connecting peripherals,     -   A gateway enabling to establish connections between the local         area network and the external data sources, the gateway         -   being distributed among some peripherals, called gateway             modules, and         -   comprising means for managing the introduction or the             withdrawal of new gateways modules,     -   Each gateway module comprising means enabling it to establish a         complete connection between the local area network and an         external source, the other gateway modules having established or         not a connection with an external source, Characterized in that         each gateway module is a communication device according to         claims 1 to 9.

When the home network is compliant with the IEEE-1394 network, an other fact is often ignored by IEEE-1394 gateway designers:

-   -   The number of simultaneous accesses to the gateway is limited by         the number of isochronous channels that can be opened, mainly         due to hardware limitations. That feature depends on the         IEEE1394 bus chipset. So, even many slots are populated, only         one, two or, in any case, a finite number of them would be used         simultaneously.

A modular gateway as proposed can enable the access to several isochronous channels as each module has its own IEEE-1394 interface and the controlling means enable the cohabitation of the different isochronous channels by sharing the bandwidth among the different gateway modules.

The invention also concerns a communication method between several external data sources and a local area network, said local area network connecting peripherals, comprising the step of:

-   -   enabling the set-up of connections between the local area         network and the external data sources, characterized in that it         further comprises the step of:     -   controlling the incoming data from the external sources and         sending them to the local area network in order to reduce the         bandwidth occupation on the local area network,         -   said method being preferably intended to be implemented in a             device according to any embodiment of the invention.

The invention also concerns a computer program product comprising program instructions for executing the steps of the method for creating semantic browsing options according to the invention, when said program is loaded on a computer.

Further features of the invention will appear in the following description of exemplary embodiments made with reference to the attached drawing where:

FIG. 1 represents a communication device according to an embodiment of the invention,

FIG. 2 represents an example of a stream filtering process,

FIG. 3 represents a system implementing gateway modules according to an embodiment of the invention,

FIG. 4 represents the layers and the protocol stacks that control a device according to a preferred embodiment of the invention.

The preferred embodiment illustrated by the different figures is based on a local area network compliant with the IEEE-1394 standard and the incoming stream is compliant with MPEG-2 standard.

On FIG. 1, the device 1 comprises a receiver/demodulator module 2 connected to an external network 17.

The external network 17 can be a broadcast network, such as a satellite, a terrestrial or a cable network. The receiver demodulator module 2 comprises radio frequency circuits, a QPSK (standing for “Quaternary Phase Shift Keying”, a COFDM (standing for “Coded Orthogonal Frequency Division Multiplexing”) or QAM (standing for “Quadrature Amplitude Modulation”) demodulator according to the type of chosen front end.

The external network can also be a broadband network such as an ADSL (standing for “Asymmetric Digital Subscriber Line”) network. It gives the means of communication according to the IP protocol for accessing the broadband network.

The receiver demodulator 2 is connected to a signal processor 3.

The signal processor 3 comprises at least a stream filtering module 16, a tables updating module 15, a content protection module 14 and an IP bridging module 18.

The filtering module is in charge of controlling the incoming data from the external network 17, in order to save bandwidth on the IEEE-1394 network.

Saving bandwidth on the local area network is particularly important when several communication devices 1 are connected to the local area network. Each of the device being for instance connected to a different external network, enabling the end user to access several external networks such as ADSL, cable, satellite, . . . .

One limit in connecting a large number of devices 1 is the bandwidth of the IEEE-1394 network at a given time. When the client terminal, called also peripheral, is requiring a new stream, the local area network can afford the extra load or not.

The interoperability middleware takes care about the status of the home network and assists the user to optimize the network via the User Interface.

Very often, only a program from a multiple program stream is requested so the required bandwidth is reduced; if the incoming stream is compliant with MPEG-2, the stream can be reduced from 30 Mb/s (the whole multiple program) to 4 Mb/s. So, each time one program is requested, the stream is sorted to make a SPTS (Single Program Transport Stream) from the MPTS (Multiple Program Transport Stream).

The Program Tables are modified in relationship with the new content of the stream.

The SPTS is created by removing unused PlDs (standing for “Packet Identifiers”) from the MPTS without modifying the PTS/DTS (standing for “Presentation Time Stamp/Decode Time Stamp”), then the packets occupy the same temporal location making a stream with holes.

The resultant transport stream is DVB (standing for “Digital Video Broadcast”) or DSS (standing for “Digital Satellite System”) compliant so it is directly sent to the IEEE-1394 bus chipset that is designed for broadcasting isochronous DVB or DSS streams on the home network.

FIG. 2, described later, represents an example of the filtered stream

The signal processor 3 comprises also a module 15 in charge of updating the tables of the incoming stream towards the filtered stream.

The transport stream tables of information describe the content of the stream. They are transmitted inside packets with a known packet identifier (PID).

These packets of data are sorted and temporary stored in a memory of the signal processor 3, such as a FIFO (standing for “First-In First-Out”) memory.

When a predetermined number of packets are stored, they are transferred to the DRAM (standing for “Dynamic Random Access Memory”) 12. The tables are then analyzed by a processor 6, modified and updated. Then, they are transferred back to the memory of the signal processor 3. As soon as a packet is ready, it is inserted into the stream in place of a hole in the stream. The holes are created by the filtering module when some packets containing non requested PIDs are removed from the MPTS stream.

The signal processor 3 comprises also an IP (standing for “Internet Protocol”) bridging module 18.

IP bridging is performed according to the RFC 2374 December 1999 by P. Johansson that specifies how to use the IEEE Std-1394-1995 for a high performance serial bus, for the transport of Internet Protocol version 4 (Ipv4) datagrams; it defines the necessary methods, data structures and codes for that purpose. These include not only packet formats and encapsulation methods for datagrams, but also an Address Resolution Protocol (1394 ARP) and a Multicast Channel Allocation Protocol (MCAP). Both 1394 ARP and MCAP are specific to Serial bus; the latter permits management of serial bus resources when used by IP multicast groups.

The module 3 comprises also a content protection module 14.

As explained earlier, the copy protection system enables the copyright protection of the programs and also enables, if allowed, the copy permission to the end user.

Such a content protection module is thus important in the field of audio video content where copy protection is a key concern.

In a preferred embodiment, the used copy protection system is associated with a smart card reader 11. The smart card reader enables the user to be identified and informs also the device 1 of the rights of the user.

The signal processor module is connected to an IEEE-1394 port 13 composed of a link layer and of a physical layer. It is a standard interface to an IEEE-1394 network. Two IEEE-1394 ports are connected to enable the chaining of peripherals.

A flash memory 7 and a read only memory (ROM) 8 are connected to the IEEE-1394 port, to a processor 6 and to the signal processor 3.

The flash memory 7 and the Rom memory 8 are used by the processor 6 to store the code instructions. A DRAM (standing for “Dynamic Random Access Memory”) 12 is also connected to the processor.

Device 1 also comprises a power supply unit 9, and a clock module 10 in charge of providing clocks to the different modules of device 1.

An I2C (standing for “Inter-Integrated Circuit”) interface is also connected to the receiver demodulator 2 and to the processor 6. The registers of the tuner and the demodulator are programmed through the serial bus interface I2C.

A phone modem 5, that performs the access to the external network, allows the connection with the broadcaster for interactive TV or the connection to a server for Internet services.

In the cable version, not represented, a modulator can be added to provide a return channel for data returned to a server by using the cable as a bi-directional link.

A firmware 19 is also running under the control of the processor and will be described with the help of FIG. 4.

FIG. 2 represents an embodiment of a filtered stream.

The incoming stream is, in a preferred embodiment, a Multiple Program Transport Stream (MPTS) compliant with MPEG-2 standard.

Such a stream includes multiple programs. Among these programs, some of them may not be required by the peripherals located on the IEEE-1394 network. So the filtering module 16 of the signal processor 3 is in charge of removing the data packets, which are not required by the peripherals.

The MPTS stream comprises also the information tables represented by the SI (standing for “System Information”) packets. SI packets are extracted from the incoming MPTS stream and modified according to the newly created stream, called pseudo SPTS stream, which contains only the data packets, which are requested by the peripherals, the modified SI packets and holes instead of the removed packets.

FIG. 3 represents a system including several devices 1 according to a preferred embodiment of the invention.

A house 32 comprising a home network connected to external sources, 28, 29, 30, 31, is represented.

The home network comprises an IEEE-1394 network connecting several peripherals such as a home server 20, a primary display 22, a camcorder 23, a digital recorder 21, a personal computer 24, a secondary display 26 and two wireless transmission modules 25 and 27.

Four devices A, B, C, D, also called gateway modules, are each connected to an external source.

Modules A and B are respectively connected to satellite antennas 28 and 29. Module C is connected to a terrestrial TV antenna 30, module D is connected to an ADSL network 31.

The gateway modules are, in a preferred embodiment, clustered in an attic or a cellar of the house. They are chained and only one optical fiber links the cluster to the rest of the network. Such an optical fiber enables to have a relatively long haul transmission or link between the cluster of gateways and the rest of the network. This can be of interest for a home installation purpose.

Such a system enables the connection to several external sources and the number of connections is not limited by the bandwidth of the network as each of the gateway modules has controlling means enabling it to optimize the amount of data sent to the local area network. Moreover, one great advantage of having each gateway connected to an external source is that each of the gateway module has an IEEE-1394 port and thus a sufficient number of isochronous channels can be handled simultaneously. The gateway is thus distributed, fully scalable, giving the end user the best freedom in building its own network. The global gateway function is the sum of small hardware devices controlled by clients in a home network. Clients can be the displays 22 or 26, the home server 20, the digital recorder 21 or the analog camcorder 23.

FIG. 4 gives an illustration of the layers and the protocol stacks controlling the device 1.

The firmware stack is running under control of a real time operating system.

At low level, the hardware adaptation layers are composed of several interfaces according to the external sources that are connected.

The hardware adaptation layers make the interface between the receivers and the upper protocol stacks.

The hardware interface in use is depending on the type of the gateway module: it depends on the external source the gateway module is connected to.

A module 37 controls the access to the IEEE-1394 local area network.

A module 35 controls the access to the broadcast network and a module 35 controls the access to the broadband network.

The upper layer is a kernel core in charge of the protocols supported by the gateway modules. The kernel core comprises:

-   -   a module 39 for managing the IEEE-1394 link,     -   a module 38 dealing with the DVB, DSS, ATSC (standing for         “Advanced Television System Committee”) transport streams. The         protocol stack is compliant with the standardized         specifications.     -   a module 34 supporting main transport protocols like TCP         (standing for “Transmission Control Protocol”), UDP (standing         for “User Datagram Protocol”), RTP (standing for “Real time         Transport Protocol”).

The upper layer called “user's libraries core” supports a proprietary interoperability protocol. In another embodiment HAVI (standing for “Home Audio Video interoperability”) or other protocol can also be implemented.

An API (standing for “Application Programming Interface”) is delivered for allowing an easy implementation of the user application. The user application includes the remote control of the gateway module, data processing . . . 

1. Communication device comprising: several external data sources, at least a local area network connecting peripherals, a plurality of means enabling to establish connections between the local area network and the external data sources, means for controlling the incoming data from the external sources and for sending them to the local area network in order to reduce the bandwidth occupation on the local area network, wherein it comprises means for updating signalization tables comprised in the incoming data, means for inserting the modified signalization tables in the stream sent to the local area network.
 2. Communication device according to claim 1 wherein it is intended to establish one connection with an external source upon request of peripherals of the local area network.
 3. Communication device according to claim 1, wherein it comprises filtering means intended to remove some data coming from the external sources to create a single program transport stream or a partial multiple program transport stream for the local area network from the multiple program transport stream selected from the external source.
 4. Communication device according to claim 1, wherein it comprises means for updating signalization tables comprised in the incoming data, means for inserting the modified signalization tables in the stream sent to the local area network.
 5. Communication device according to claim 1, wherein the filtering means are intended to remove packets containing non-requested packet identifiers from the multiple transport streams to create the single transport streams.
 6. Communication device according to claim 1, wherein it has means to guarantee a copy protection of the data coming from the external source.
 7. Communication device according to claim 1, wherein the local area network is compliant with IEEE-1394 protocol.
 8. Communication device according to claim 7 wherein it is intended to generate a data stream on the local area network compliant with DVB or DSS standard.
 9. System comprising: Several external data sources, At least a local area network connecting peripherals, A gateway enabling to establish connections between the local area network and the external data sources, the gateway being distributed among some peripherals, called gateway modules, and comprising means for managing the introduction or the withdrawal of new gateways modules, Each gateway module comprising means enabling it to establish a complete connection between the local area network and an external source, the other gateway modules having established or not a connection with an external source, wherein each gateway module is a communication device according to claim
 1. 10. Communication method between several external data sources and a local area network, said local area network connecting peripherals, comprising the step of: enabling the set-up of connections between the local area network and the external data sources, wherein it further comprises the step of: controlling the incoming data from the external sources and sending them to the local area network in order to reduce the bandwidth occupation on the local area network, said method being preferably intended to be implemented in a device according to claim
 1. 11. Computer program product comprising program instructions for executing the steps of the method for creating semantic browsing options according to claim 10, when said program is loaded on a computer. 